package com.hyperfix.user.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hyperfix.models.common.R;
import com.hyperfix.models.user.dtos.UserInfoDTO;
import com.hyperfix.models.user.pojos.UserInfo;
import com.hyperfix.models.user.vos.NewUserVO;
import com.hyperfix.models.user.vos.UserInfoQueryVO;
import com.hyperfix.models.user.vos.UserInfoVO;

/**
 * @author JiangChunYu
 * 2024/4/7
 */
public interface UserInfoService extends IService<UserInfo> {
    R<UserInfoDTO> getUserInfoByUsername(String username);

    R<String> updateInfo(UserInfoVO userInfoVO);

    R<String> delete(String username);

    R<String> addUser(NewUserVO newUserVO);

    R<IPage<UserInfoDTO>> list(Integer pageNum, Integer size, UserInfoQueryVO userInfoQueryVO);
}
